AspectOptima: A Case Study on Aspect Dependencies and Interactions

نویسندگان

  • Jörg Kienzle
  • Ekwa Duala-Ekoko
  • Samuel Gélineau
چکیده

This paper presents AspectOptima, a language independent, aspect-oriented framework consisting of a set of ten base aspects — each one providing a well-defined reusable functionality — that can be configured to ensure the ACID properties (Atomicity, Consistency, Isolation, and Durability) for transactional objects. The overall goal of AspectOptima is to serve as a case study for aspect-oriented software development, in particular for evaluating the expressivity of aspect-oriented programming languages and how they address complex aspect interactions and dependencies. The ten base aspects of AspectOptima are simple, yet have complex dependencies and interactions among each other. To implement different concurrency control and recovery strategies, these aspects can be composed and assembled into different configurations; some aspects conflict with each other, others have to adapt their runtime behavior according to the presence or absence of other aspects. The design of AspectOptima highlights the need for a set of key language features required for implementing reusable aspect-oriented frameworks. To illustrate the usefulness of AspectOptima as a means for evaluating programming language features, an implementation of AspectOptima in AspectJ is presented. The experiment reveals that AspectJ ’s language features do not directly support implementation of reusable aspect-oriented frameworks with complex dependencies and interactions. The encountered AspectJ language limitations are discussed, workaround solutions are shown, potential language improvements are proposed where appropriate, and some preliminary measurements are presented that highlight the performance impact of certain language features.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Mapping Aspect-Oriented Models to Aspect-Oriented Code

When aspect-oriented modeling techniques are used in the context of Model-Driven Engineering, a possible way of obtaining an executable from an aspect-oriented model is to map it to code written in an aspect-oriented programming language. This paper presents important challenges that a modeler has to face when mapping aspect-oriented models to an aspect-oriented programming language: mapping st...

متن کامل

AO Challenge, Part II: Lessons Learnt from Implementing a Reusable Aspect Framework

Writing a set of reusable aspects that can be used in isolation and in combination is a highly complex task. In this paper we identify a set of key features required for implementing reusable aspects frameworks with complex aspect dependencies and interactions based on our experience implementing AspectOptima, a language independent, aspectoriented framework that provides runtime support for tr...

متن کامل

Reusable Aspect Models

This paper presents an approach for specifying reusable aspect models that define structure (using class diagrams) and behavior (using sequence diagrams). The high degree of reusability of the aspect models is demonstrated by modeling the design of 8 inter-dependent aspects of the AspectOptima case study. Based on this experience, several modeling language features that we deem essential to sup...

متن کامل

Developing an Integrated Simulation Model of Bayesian-networks to Estimate the Completion Cost of a Project under Risk: Case Study on Phase 13 of South Pars Gas Field Development Projects

Objective: The aim of this paper is to propose a new approach to assess the aggregated impact of risks on the completion cost of a construction project. Such an aggregated impact includes the main impacts of risks as well as the impacts of interactions caused by dependencies among them. Methods: In this study, Monte Carlo simulation and Bayesian Networks methods are combined to present a frame...

متن کامل

Aspects, Dependencies, and Interactions

The topics on aspects, dependencies and interactions are among the key remaining challenges to be tackled by the Aspect-Oriented Software Development (AOSD) community to enable a wide adoption of AOSD technology. This second workshop, organized and supported by the AOSD-Europe project, aimed to continue the wide discussion on aspects, dependencies and interactions started at ADI 2006.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Trans. Aspect-Oriented Software Development

دوره 5  شماره 

صفحات  -

تاریخ انتشار 2009